package top.fwpsl.script.base

/**
  * 懒值
  * @author 风戏fw
  * @date 2020/11/26
  */
object LazyDemo {

  /**
    * 当val被声明为lazy时，他的初始化将被推迟，直到我们首次对此取值，适用于初始化开销较大的场景。
    */

  def init(): String = {
    println("init方法执行")
    "我来了~"
  }

  def main(args: Array[String]): Unit = {
    val msg1 = init()
    println("lazy方法没有执行")
    println(msg1)

    println("--------------")

    lazy val msg2 = init()
    println("lazy方法没有执行")
    println(msg2)
  }

}

